package com.gxa.eshop.service;


import com.gxa.eshop.common.PageResult;
import com.gxa.eshop.pojo.Sku;
import java.util.List;
import java.util.Map;

/**
 * Created by bill  2020/12/29
 **/
public interface SkuService {

    List<Sku> findAll();

    PageResult<Sku> findPage(int page, int size);

    List<Sku> findList(Map<String, Object> searchMap);

    PageResult<Sku> findPage(Map<String, Object> searchMap, int page, int size);

    Sku findById(String id);

    void add(Sku sku);

    void update(Sku sku);

    void delete(String id);

    /**
     * 根据skuId减库存
     * */
    void updateItemStock(Integer num, String id);

    /**
     * 根据id加库存
     * */
    void addItemStock(Integer num, String id);

    /**
     * 查询价格
     * @param id
     * @return
     */
    int findPrice(String id);

    /**
     *  保存价格到缓存
     * @param skuId
     */
    void savePriceToRedisBySkuId(String skuId, Integer price);

    /**
     *  保存全部价格到缓存
     */
    void saveAllPriceToRedis();
}
